/**
 * 主界面页面
 */
Ext.namespace('demo');//
// 获取用户的信息
var userId = Ext.getDom("userId").value;// 企业用户的注册ID
var user_is_enterprise = Ext.getDom('user_is_enterprise').value;// 是否为企业注册用户
var user_role = Ext.getDom("user_role").value;// (-1，为新注册用户，0，为注册审核不通过用户)
var user_is_delete = Ext.getDom("user_is_delete").value;
var user_city = Ext.getDom("user_city").value;// -1最高权限用户 ，其他为各个不同城市的用户
var st = Ext.getDom("serverdate").value;// 获取系统时间
var username = Ext.getDom("username").value;// 获取用户名
var xmldata = Ext.getDom('xmldata').value;
var xmldatainstry = Ext.getDom('xmldatainstry').value;
var OPTION_SDDECLARE_YEAR = '2011';// 试点申报年度
var OPTION_NDDECLARE_YEAR = '2012';// 年度数据上报年度
var OPTION_NDDECLARE_BEGIN_DATE = '2012-11-01';// 数据上报开始时间
var OPTION_NDDECLARE_END_DATE = '2012-11-10';// 数据上报结束时间
var OPTION_DATA_TYPE = '1111';
demo.module = function(tab) {
	this.main = tab;
	this.init();
};//
Ext.extend(demo.module, Ext.util.Observable, {
			init : Ext.emptyFn
		});

demo.app = function() {
	this.init()
};
Ext.extend(demo.app, Ext.util.Observable, {
	init : function() {
		this.CxxsdqysbTree = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/CxxsdqysbTree.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '创新型试点企业管理',
								expanded : true
							})
				});
		this.CxxsdqysbTree.on('click', this.clickTree, this);
		// 模块库管理系统
		this.CxxsfqypgTree = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/CxxsfqypgTree.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '创新型示范企业管理',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.CxxsfqypgTree.on('click', this.clickTree, this);
		this.cxxqyndsb = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/cxxqyndsb.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.cxxqyndsb.on('click', this.clickTree, this);
		this.cxxqysjfx = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/cxxqysjfx.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.cxxqysjfx.on('click', this.clickTree, this);
		this.qyxxgl = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/qyxxgl.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.qyxxgl.on('click', this.clickTree, this);
		this.gzdtgl = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/gzdtgl.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.gzdtgl.on('click', this.clickTree, this);
		this.xtgl = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								dataUrl : 'lefttree/xtgl.action',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '',
								expanded : true
							})
				});// chaxun的结束，用来显示查询的菜单
		this.xtgl.on('click', this.clickTree, this);
		this.tree = new Ext.tree.TreePanel({
					region : 'west',
					margins : '0 0 0 5',
					width : 250,
					split : true,
					minSize : 200,
					maxSize : 300,
					autoScroll : true,
					border : false,
					bodyStyle : 'padding:10px',
					rootVisible : false,
					loader : new Ext.tree.TreeLoader({
								url : 'tree/sml.txt',
								requestMethod : 'GET'
							}),
					root : new Ext.tree.AsyncTreeNode({
								id : 'root',
								text : '功能菜单',
								expanded : true
							})
				});// tree的结束
				var _cfgg = {
				importanttip:'暂未建设',
				constructort :'暂未建设',
				xmldata :xmldata,
				xmldatainstry : xmldatainstry
				}
		var tab = new Ext.Panel({
					title : '任务',
					id : 'docs',
					iconCls : 'homeTab',
					bodyStyle : 'padding:0px',
//					autoLoad : 'docs.html',
					layout : 'fit',
					items:[new homepageformpanel(_cfgg)]
				}); // tab的结束 主要用于说明问题
		this.body = new Ext.TabPanel({
			region : 'center',
			margins : '0 5 0 0',
			activeTab : 0,
			autoScroll : true,
			enableTabScroll : true,
			items : [tab],
			enableTabScroll : true,

			bbar : [{
				text : '<font color="black">主办单位：浙江省科学技术厅 承办单位: 浙江火炬生产力促进中心</font>',
				disabled : true
			}, '->', {
				text : '<font color="black">技术支持：杭州池墨科技有限公司   联系电话：0571-28056121</font>',
				iconCls : 'chimo',
				// handler:function(){
				// window.open ('http://www.trymore.cn','newwindow');
				// },
				scope : this
			}],
			plugins : new Ext.ux.TabCloseMenu(),
			defaults : {
				autoScroll : true
			}
		}); // body的结束，用于显示说明
		this.body.on('tabchange', this.changeTab, this);
		var viewport = new Ext.Viewport({
			layout : 'border',
			items : [new Ext.BoxComponent({
								region : 'north',
								el : 'header',
								height : 70
							}), {
						region : 'west',
						id : 'west-panel',
						el : 'west-div',
						title : '<font color="green">' + username
								+ '</font>',
						split : true,
						width : 200,
						iconCls : 'chimo',
						minSize : 175,
						maxSize : 400,
						collapsible : true,
						margins : '0 0 0 5',
						layout : 'accordion',
						bbar : [{
							text : '',
							iconCls : 'exit',
							menu : new Ext.menu.Menu({
								items : [{
									text : '退出系统',
									iconCls : 'door',
									handler : function() {
										Ext.Msg.show({
											title : '系统提示',
											msg : '您确实要退出本系统吗？',
											buttons : Ext.Msg.YESNO,
											fn : function(btn) {
												if (btn == 'yes') {
													window.location.href = '../login.jsp';
												}
											},
											icon : Ext.MessageBox.QUESTION
										});
									},
									scope : this
								}, {
									text : '关于本系统',
									iconCls : 'smlmanage',
									scope : this,
									handler : function() {
										Ext.Msg.show({
											title : '关于本系统',
											msg : '<br><center>由杭州池墨科技有限公司制作</center><br> <center>Version 1.0.0</center>',
											buttons : Ext.Msg.OK,
											icon : Ext.MessageBox.INFO
										});
									}
								}]
							})
						}, '->', {
							text : '<font color="red">'+getDate()+'</font>'
						}],
						layoutConfig : {
							animate : true
						},
						items : [{
									title : '创新型试点企业申报',
									border : false,
									collapsed : false,
									iconCls : 'cxxsdqysb',
									items : this.CxxsdqysbTree
								}, {
									title : '创新型示范企业管理',
									border : false,
									collapsed : true,
									iconCls : 'cxxsfqypg',
									items : this.CxxsfqypgTree
								}, {
									title : '企业<font color="red">'
											+ getDataType(OPTION_DATA_TYPE)
											+ '</font>上报',
									border : false,
									// tooltip:'',
									collapsed : true,
									iconCls : 'cxxqyndsb',
									items : this.cxxqyndsb
								}, {
									title : '创新型企业数据分析',
									border : false,
									collapsed : true,
									iconCls : 'cxxqysjfx',
									items : this.cxxqysjfx
								}, {
									title : '企业信息管理',
									border : false,
									collapsed : true,
									iconCls : 'qyxxgl',
									items : this.qyxxgl
								}, {
									title : '工作动态管理',
									border : false,
									collapsed : true,
									iconCls : 'gzdtgl',
									items : this.gzdtgl
								}, {
									title : '系统管理',
									border : false,
									collapsed : true,
									iconCls : 'xtgl',
									items : this.xtgl
								}]
					}, this.body]
		});// view的结束
		this.loadMask = new Ext.LoadMask(this.body.body); // window的body

	},// init（）方法的结束

	clickTree : function(_node) {
		if (!_node.isLeaf()) {
			return false; // 如果不是一个末节点直接返回
		}

		var id = 'tab-' + _node.id;// 为新生成的tab的id取值
		var cls = '';
		cls = _node.attributes['iconCls'];
		var tab = Ext.getCmp(id);// 获取id的内容
		if (!tab) { // 如果不存在
			tab = this.body.add(new Ext.Panel({
						id : id,//
						title : _node.text,
						iconCls : cls,
						layout : 'fit',
						closable : true

					}));// 创建一个tab

			this.body.setActiveTab(tab);// 并设置为活动的
			// 加载模块
			this.loadModel(_node.id, tab);// 加载器内容
		} else {// 如果已经打开，直接设置为可见
			this.body.setActiveTab(tab);
		}
	},// 数节点单击函数的结束
	loadModel : function(id, tab) {
		// 定义模块变量
		var model;

		if (this[id]) {
			// 如果模块类已存在，就直接实例化
			model = new this[id](tab);
		} else {
			this.loadMask.show();
			Ext.Ajax.request({
						method : 'GET',
						url : 'js/modules/' + id + '.js',
						scope : this,
						success : function(response) {

							// 获取模块类
							// alert(response.responseText);
							this[id] = eval(response.responseText);
							// 实例化模块类
							model = new this[id](tab);
							// alert(response.responseText);
							this.loadMask.hide();
						}
					});
		}
	},// loadMask的结束
	changeTab : function(p, t) {
		// 如果存在相应树节点，就选中,否则就清空选择状态
		var id = t.id.replace('tab-', '');
		var node = this.tree.getNodeById(id);
		if (node) {
			this.tree.getSelectionModel().select(node);
		} else {
			this.tree.getSelectionModel().clearSelections();
		}
	}
});
Ext.BLANK_IMAGE_URL = 'image/s.gif';
Ext.form.Field.prototype.msgTarget = 'side';
Ext.onReady(function() {
			Ext.QuickTips.init();
			Ext.getDoc().on("contextmenu", function(e) {
						e.stopEvent();
					});
			myApp = new demo.app();

		});